package community

import (
	"github.com/flipped-aurora/gin-vue-admin/server/global"
)

// CommunityUser 社区用户关系表
type CommunityUser struct {
	global.GVA_MODEL
	UserID      uint `gorm:"not null" json:"userId"`         // UserID 用户 id
	CommunityID uint `gorm:"not null" json:"communityId"`    // CommunityID 社区 id
	Role        int8 `gorm:"default:1;not null" json:"role"` // Role 默认1，1=普通，2=管理员，3=主理人
}

// TableName 指定表名
func (CommunityUser) TableName() string {
	return "community_user"
}

// Indexes 添加唯一索引
func (CommunityUser) Indexes() []string {
	return []string{
		"UNIQUE KEY uk_user_community (user_id, community_id)",
		"KEY idx_community_role (community_id, role)",
	}
}
